package com.atomikos.icatch.admin;

import com.atomikos.icatch.HeurCommitException;
import com.atomikos.icatch.HeurHazardException;
import com.atomikos.icatch.HeurMixedException;
import com.atomikos.icatch.HeurRollbackException;
import com.atomikos.icatch.HeuristicMessage;
import com.atomikos.icatch.SysException;
import java.io.Serializable;

public abstract interface AdminTransaction
  extends Serializable
{
  public static final int STATE_ACTIVE = -3;
  public static final int STATE_PREPARING = -2;
  public static final int STATE_UNKNOWN = -1;
  public static final int STATE_PREPARED = 0;
  public static final int STATE_HEUR_COMMITTED = 1;
  public static final int STATE_HEUR_ABORTED = 2;
  public static final int STATE_HEUR_HAZARD = 3;
  public static final int STATE_HEUR_MIXED = 4;
  public static final int STATE_ABORTING = 5;
  public static final int STATE_COMMITTING = 6;
  public static final int STATE_TERMINATED = 7;
  
  public abstract String getTid();
  
  public abstract int getState();
  
  public abstract HeuristicMessage[] getTags();
  
  public abstract HeuristicMessage[] getHeuristicMessages();
  
  public abstract HeuristicMessage[] getHeuristicMessages(int paramInt);
  
  public abstract boolean wasCommitted();
  
  public abstract void forceCommit()
    throws HeurRollbackException, HeurHazardException, HeurMixedException, SysException;
  
  public abstract void forceRollback()
    throws HeurCommitException, HeurMixedException, HeurHazardException, SysException;
  
  public abstract void forceForget();
}


/* Location:           C:\myfile\mysoft\apache-maven-3.5.0-bin\apache-maven-3.5.0\myrep\com\atomikos\transactions-api\3.7.0\transactions-api-3.7.0.jar
 * Qualified Name:     com.atomikos.icatch.admin.AdminTransaction
 * JD-Core Version:    0.7.0.1
 */